Gli alias SQL vengono utilizzati per assegnare un nome temporaneo a una tabella o colonna in una tabella.
Gli alias vengono spesso utilizzati per rendere più leggibili i nomi delle colonne.
Un alias esiste solo per la durata della richiesta corrente.
Un alias viene creato utilizzando la parola chiave AS.
SELECT column_name AS alias_name
FROM table_name
SELECT column_name(s)
FROM table_name AS alias_name
Di seguito è riportato un esempio della tabella "Customers" ("Clienti"):
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
E l'esempio dalla tabella "Orders" ("Ordini"):
ProductID | OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|---|
1 | 10248 | 90 | 5 | 1996-07-04 | 3 |
2 | 10249 | 81 | 6 | 1996-07-05 | 1 |
3 | 10250 | 34 | 4 | 1996-07-08 | 2 |
La seguente istruzione SQL crea due alias, uno per la colonna CustomerID e uno per la colonna CustomerName:
Run SQLSELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers
La seguente istruzione SQL crea due alias: uno per la colonna CustomerName e uno per la colonna ContactName.
Nota: sono necessarie virgolette doppie o parentesi quadre se l'alias contiene spazi:
Run SQLSELECT CustomerName AS Customer, ContactName AS 'Contact Person'
FROM Customers
La seguente istruzione SQL crea un alias denominato "Address" ("Indirizzo") che concatena quattro colonne (indirizzo, codice postale, città e paese):
SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address
FROM Customers
Per far funzionare l'istruzione SQL precedente in MySQL, utilizzare quanto segue:
Run SQLSELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers
Per far funzionare l'istruzione SQL precedente in Oracle, utilizzare quanto segue:
SELECT CustomerName, (Address || ', ' || PostalCode || ' ' || City || ', ' || Country) AS Address
FROM Customers
La seguente istruzione SQL seleziona tutti gli ordini del cliente con CustomerID = 4 ("Around the Horn"). Utilizziamo le tabelle "Customers" e "Orders" e diamo loro rispettivamente gli alias di tabella "c" e "o" (qui utilizziamo gli alias per rendere la query SQL più breve):
Run SQLSELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName = 'Around the Horn' AND c.CustomerID = o.CustomerID
La seguente istruzione SQL è uguale a quella precedente, ma senza gli alias:
Run SQLSELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName = 'Around the Horn' AND Customers.CustomerID = Orders.CustomerID
Gli alias possono essere utili quando: